package rpc.entity;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

/**
 * 消费者想提供者发送的请求对象
 *
 * 定义传递参数实体类
 * 四个参数可确保服务端正确调用接口
 *
 * @Author wupeijie
 * @Date 2020/11/19 17:02
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class RpcRequest implements Serializable {


    private String requestId; //请求号
    private String interfaceName; //接口名称
    private String methodName; //待调用方法名称
    private Object[] parameters; //运用方法的参数
    private Class<?>[] paramTypes; //参数类型

    /**
     * 是否是心跳包
     */
    private Boolean heartBeat;
}
